package org.meb.conquest.rest.service;

import java.util.List;

import org.meb.conquest.db.dao.Query;
import org.meb.conquest.db.model.Deck;
import org.meb.conquest.rest.core.ExportType;
import org.meb.conquest.rest.core.ExportedDeck;
import org.meb.conquest.rest.exception.DeckException;

public interface DeckService {
	
	List<Deck> findUserDecks();

	Deck findUserDeck(Long id);
	
	List<Deck> findUserDecks(Query<Deck> query);

	Deck saveUserDeck(Long id, Deck deck) throws DeckException;
	
	void deleteUserDeck(Long id) throws DeckException;

	ExportedDeck exportUserDeck(Long id, ExportType octgn) throws DeckException;
}
